package com.tianma315.admin.product.service;


//                   _ooOoo_
//                  o8888888o
//                  88" . "88
//                  (| -_- |)
//                  O\  =  /O
//               ____/`---'\____
//             .'  \\|     |//  `.
//            /  \\|||  :  |||//  \
//           /  _||||| -:- |||||-  \
//           |   | \\\  -  /// |   |
//           | \_|  ''\---/''  |   |
//           \  .-\__  `-`  ___/-. /
//         ___`. .'  /--.--\  `. . __
//      ."" '<  `.___\_<|>_/___.'  >'"".
//     | | :  `- \`.;`\ _ /`;.`/ - ` : | |
//     \  \ `-.   \_ __\ /__ _/   .-` /  /
//======`-.____`-.___\_____/___.-`____.-'======
//                   `=---='
//^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
//         佛祖保佑       永无BUG

import com.baomidou.mybatisplus.plugins.Page;
import com.tianma315.admin.product.domain.Product;
import com.tianma315.admin.product.domain.vo.ProductVo;

import java.util.List;

/**
 * 产品业务
 * <p>
 * Created by zcm on 2019/5/25.
 */
public interface ProductService {

    /**
     * @param product
     * @return
     */
    boolean save(Product product);

    /**
     * @param product
     * @return
     */
    boolean edit(Product product);

    /**
     * @param product_id
     * @return
     */
    boolean remove(long product_id);

    /**
     * @return
     */
    List<Product> getAll();
    List<Product> getAll(Product product);

    List<Product> getAllByName(String productName);
    /**
     * @return
     * @param pageNumber
     * @param pageSize
     * @param searchKey
     */
    Page<ProductVo> getPage(int pageNumber, int pageSize, String searchKey);

    /**
     *
     * @param product_id
     * @return
     */
    Product getById(long product_id);


}
